package parameter

// import (
// 	"fmt"

// 	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
// 	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/as/v1/region"
// 	dns "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2"
// 	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2/model"
// )

type DDNSCfg struct {
	TaskInterval  int       `json:"taskInterval"`
	DomainCfg     DomainCfg `json:"domainCfg"`
	GetIps        []string  `json:"getIps"`
	OtherScript   string    `json:"otherScript"`
	IsFirstModify bool      `json:"isFirstModify"`
	LogLevel      string    `json:"loglevel"`
	LogMode       int       `json:"logmode"`
	LogPath       string    `json:"logpath"`
	LogSize       int       `json:"logsize"`
	LogDay        int       `json:"logday"`
}

type DomainCfg struct {
	AnalyzeManufactureerId int      `json:"analyzeManufactureerId"`
	RegionName             string   `json:"regionName"`
	Accesskey              string   `json:"accesskey"`
	Secretkey              string   `json:"secretkey"`
	Domains                []string `json:"domains"`
}

type Requestinfo struct {
	ID     string
	Name   string
	ZoneId string
	Status string
}

// func NewClient(dcfg DomainCfg) *dns.DnsClient {
// 	ak := dcfg.Accesskey
// 	sk := dcfg.Secretkey
// 	re := dcfg.RegionName
// 	auth := basic.NewCredentialsBuilder().
// 		WithAk(ak).
// 		WithSk(sk).
// 		Build()
// 	client := dns.NewDnsClient(
// 		dns.DnsClientBuilder().
// 			WithRegion(region.ValueOf(re)).
// 			// WithRegion(region.ValueOf("cn-east-3")).
// 			WithCredential(auth).
// 			Build())
// 	return client
// }

// func Doing(C dns.DnsClient, domains []string,ip string) {
// 	for _, domain := range domains {
// 		GetDnsInfo(C, domain)
// 	}
// }

// func GetDnsInfo(C dns.DnsClient, domains string) {
// 	request := &model.ListRecordSetsRequest{}
// 	statusRequest := "ACTIVE"
// 	request.Status = &statusRequest
// 	typeRequest := "A"
// 	request.Type = &typeRequest
// 	request.Name = &domains
// 	response, err := C.ListRecordSets(request)
// 	if err != nil {
// 		fmt.Println(err)
// 	}
// 	// fmt.Printf("%v\n", len(*response.Recordsets))
// 	// fmt.Printf("%v\n", len(*response.Recordsets))
// 	for i, v := range *response.Recordsets {
// 		if i == 0 {
// 			// fmt.Println(i, v)
// 			fmt.Println(*v.Id, *v.ZoneId, *v.Name)
// 		}
// 		// fmt.Println(i, v)
// 		// fmt.Println(*v.Id, *v.ZoneId, *v.Name)
// 	}
// }

// 列出所以的zones
// type ListPublicZones struct {
// 	Zones    []Zones  `json:"zones"`
// 	Links    Links    `json:"links"`
// 	Metadata Metadata `json:"metadata"`
// }
// type Links struct {
// 	Self string `json:"self"`
// }
// type Zones struct {
// 	ID                  string        `json:"id"`
// 	Name                string        `json:"name"`
// 	Description         interface{}   `json:"description"`
// 	Email               string        `json:"email"`
// 	TTL                 int           `json:"ttl"`
// 	Serial              int           `json:"serial"`
// 	Masters             []interface{} `json:"masters"`
// 	Status              string        `json:"status"`
// 	PoolID              string        `json:"pool_id"`
// 	ProjectID           string        `json:"project_id"`
// 	ZoneType            string        `json:"zone_type"`
// 	CreatedAt           string        `json:"created_at"`
// 	UpdatedAt           string        `json:"updated_at"`
// 	RecordNum           int           `json:"record_num"`
// 	Links               Links         `json:"links"`
// 	Tags                []interface{} `json:"tags"`
// 	EnterpriseProjectID string        `json:"enterprise_project_id"`
// }
// type Metadata struct {
// 	TotalCount int `json:"total_count"`
// }

// // 通过zone id查单个zone下的record sets
// type ListRecordSetsByZone struct {
// 	Links      Links        `json:"links"`
// 	Recordsets []Recordsets `json:"recordsets"`
// 	Metadata   Metadata     `json:"metadata"`
// }

// type Recordsets struct {
// 	ID          string      `json:"id"`
// 	Name        string      `json:"name"`
// 	Description interface{} `json:"description"`
// 	Type        string      `json:"type"`
// 	TTL         int         `json:"ttl"`
// 	Records     []string    `json:"records"`
// 	Status      string      `json:"status"`
// 	ZoneID      string      `json:"zone_id"`
// 	ZoneName    string      `json:"zone_name"`
// 	CreateAt    string      `json:"create_at"`
// 	UpdateAt    string      `json:"update_at"`
// 	Default     bool        `json:"default"`
// 	ProjectID   string      `json:"project_id"`
// 	Links       Links       `json:"links"`
// }

// // 修改域名记录的请求
// type UpdateRecordSetRequest struct {
// 	Name        string   `json:"name,omitempty"`
// 	Description string   `json:"description"`
// 	Type        string   `json:"type,omitempty"`
// 	TTL         int      `json:"ttl"`
// 	Records     []string `json:"records"`
// }

// // 修改域名记录的返回
// type UpdateOrAddRecordSetResponse struct {
// 	ID          string   `json:"id"`
// 	Name        string   `json:"name"`
// 	Description string   `json:"description"`
// 	Type        string   `json:"type"`
// 	TTL         int      `json:"ttl"`
// 	Records     []string `json:"records"`
// 	Status      string   `json:"status"`
// 	ZoneID      string   `json:"zone_id"`
// 	ZoneName    string   `json:"zone_name"`
// 	CreateAt    string   `json:"create_at"`
// 	UpdateAt    string   `json:"update_at"`
// 	Default     bool     `json:"default"`
// 	ProjectID   string   `json:"project_id"`
// 	Links       Links    `json:"links"`
// }

// // 添加域名请求
// type AddSetRequest struct {
// 	Name        string   `json:"name,omitempty"`
// 	Description string   `json:"description"`
// 	Type        string   `json:"type,omitempty"`
// 	Status      string   `json:"status"`
// 	TTL         int      `json:"ttl"`
// 	Records     []string `json:"records,omitempty"`
// }
